from django.shortcuts import redirect
from django.utils.deprecation import MiddlewareMixin


# 登录校验中间件
class AuthMiddleware(MiddlewareMixin):

    def process_request(self, request):
        # 1.排除那些不需要登录就能访问的页面
        #   用request.path_info 获取当前用户请求的URL /login/
        # print('访问路径:' + request.path_info)
        if request.path_info == '/':
            return

        # 2.读取当前访问用户的session信息，如果能够读到，说明已经登录过，就中以继续向后走
        #   {'employeeid': 'D45623', 'name': 'liuyang123', 'admin': True}
        info_dict = request.session.get('info')
        # print(info_dict)
        if info_dict:
            return

        # 3.没有登录过，重新返回到登录页面
        return redirect('/')
